﻿using System;
namespace Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr {
    
    
    public partial class ENOtsiAadressiKyResponse : global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IENOtsiAadressiKyResponse {
        
        private System.Collections.Generic.List<ENOtsiAadressiKyResponse.IENOtsiAadressiKyType> @__eNOtsiAadressiKy = new System.Collections.Generic.List<ENOtsiAadressiKyResponse.IENOtsiAadressiKyType>();
        
        public ENOtsiAadressiKyResponse() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public ENOtsiAadressiKyResponse(System.Collections.Generic.List<ENOtsiAadressiKyResponse.IENOtsiAadressiKyType> @eNOtsiAadressiKy) {
            this.@__eNOtsiAadressiKy = @eNOtsiAadressiKy;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected ENOtsiAadressiKyResponse(IENOtsiAadressiKyResponse @eNOtsiAadressiKyResponse) {
            this.@__eNOtsiAadressiKy = @eNOtsiAadressiKyResponse.ENOtsiAadressiKy;
        }
        
        public virtual System.Collections.Generic.List<ENOtsiAadressiKyResponse.IENOtsiAadressiKyType> ENOtsiAadressiKy {
            get {
                return this.@__eNOtsiAadressiKy;
            }
            set {
                this.@__eNOtsiAadressiKy = value;
            }
        }
        
        public partial class ENOtsiAadressiKyType : IENOtsiAadressiKyType {
            
            private string @__katastritunnus;
            
            private System.DateTime? @__regKp;
            
            private System.Decimal? @__id;
            
            public ENOtsiAadressiKyType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public ENOtsiAadressiKyType(string @katastritunnus, System.DateTime? @regKp, System.Decimal? @id) {
                this.@__katastritunnus = @katastritunnus;
                this.@__regKp = @regKp;
                this.@__id = @id;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected ENOtsiAadressiKyType(IENOtsiAadressiKyType @eNOtsiAadressiKyType) {
                this.@__katastritunnus = @eNOtsiAadressiKyType.Katastritunnus;
                this.@__regKp = @eNOtsiAadressiKyType.RegKp;
                this.@__id = @eNOtsiAadressiKyType.Id;
            }
            
            public virtual string Katastritunnus {
                get {
                    return this.@__katastritunnus;
                }
                set {
                    this.@__katastritunnus = value;
                }
            }
            
            public virtual System.DateTime? RegKp {
                get {
                    return this.@__regKp;
                }
                set {
                    this.@__regKp = value;
                }
            }
            
            public virtual System.Decimal? Id {
                get {
                    return this.@__id;
                }
                set {
                    this.@__id = value;
                }
            }
        }
        
        public interface IENOtsiAadressiKyType {
            
            string Katastritunnus {
                get;
                set;
            }
            
            System.DateTime? RegKp {
                get;
                set;
            }
            
            System.Decimal? Id {
                get;
                set;
            }
        }
    }
}
